package com.css.bjdt_core.util;

import java.util.List;
/**
 * 
* @Title: BaseDao.java 
* @Package com.css.bjdt_report.util 
* @Description:
* @author qs
* @date 2015年9月29日 下午3:10:55 
* @version V1.0
 */
public interface BaseDao<T> {
	/**
	 * 根据主键删除数据
	 * @param key
	 * @return
	 */
	int deleteByPrimaryKey(String key);
	/**
	 * 插入数据
	 * @param record
	 * @return
	 */
    int insert(T record);
    /**
     * 插入数据(忽略所有null字段)
     * @param record
     * @return
     */
    int insertSelective(T record);
    /**
     * 查询数据列表(自定义查询条件)
     * @param example
     * @return
     */
    List<T> selectByExample(Object example);
    /**
     * 根据主键获取单条数据
     * @param key
     * @return
     */
    T selectByPrimaryKey(String key);
    /**
     * 更新数据(忽略所有null字段)
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(T record);
    /**
     * 更新数据
     * @param record
     * @return
     */
    int updateByPrimaryKey(T record);
}